package com.ygxsk.carhome.ui.usercenter;

import android.content.res.Resources;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;

import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.AppUtils;
import com.blankj.utilcode.util.ClickUtils;
import com.blankj.utilcode.util.ObjectUtils;
import com.gyf.immersionbar.ImmersionBar;
import com.ygxsk.carhome.R;
import com.ygxsk.carhome.alertview.AlertView;
import com.ygxsk.carhome.alertview.OnItemClickListener;
import com.ygxsk.carhome.constant.ConstantSign;
import com.ygxsk.carhome.ui.ErrorActivity;
import com.ygxsk.carhome.utils.CommUtils;

import butterknife.BindView;

/**
 * @date 2018/1/22 0022
 * @auther itchenqi
 * @description 关于我们界面。
 */
public class AboutMeActivity extends ErrorActivity {

    //private Vibrator vibrator;
    //这里要不要类似B2C留一个测试后门??
    //private Session mSession;

    //private Vibrator vibrator;
    //这里要不要类似B2C留一个测试后门??
    //private Session mSession;

    @BindView(R.id.textagreementurlincenter)
    TextView textAgreementUrlIncenter;

    @BindView(R.id.textsecrecyturlincenter)
    TextView textSecrecytUrlIncenter;

    //关于切换后门的操作
    @BindView(R.id.textdooropen)
    TextView textDoorOpen;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        mActivityInstance = this;

        //mSession = Session.get(this);

        initViews();

        //vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);

        //关于切换后门的按钮的长按点击
        if (textDoorOpen != null) {
            textDoorOpen.setOnLongClickListener(new View.OnLongClickListener() {
                @Override
                public boolean onLongClick(View v) {

                    CommUtils.method_open(mSession, mActivityInstance);

                    return true;
                }
            });
        }
    }

    @Override
    public void initViews() {

        TextView textViewAppName = (TextView) this.findViewById(R.id.tv_name);
        String appName = AppUtils.getAppName();
        textViewAppName.setText(appName);

        TextView textViewVersion = (TextView) this.findViewById(R.id.tv_versionname);

        String versionName = AppUtils.getAppVersionName();
        textViewVersion.setText(versionName);

        //--------------------------------------------------------------------------------------------
        //用户协议和隐私政策：
        if (!ObjectUtils.isEmpty(textAgreementUrlIncenter)) {

            textAgreementUrlIncenter.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);//下划线

            textAgreementUrlIncenter.setOnClickListener(new ClickUtils.OnDebouncingClickListener() {
                @Override
                public void onDebouncingClick(View v) {
                    CommUtils.methodAgreementUrl(mActivityInstance);
                }
            });
        }

        if (!ObjectUtils.isEmpty(textSecrecytUrlIncenter)) {

            textSecrecytUrlIncenter.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);//下划线

            textSecrecytUrlIncenter.setOnClickListener(new ClickUtils.OnDebouncingClickListener() {
                @Override
                public void onDebouncingClick(View v) {
                    CommUtils.methodSecrecytUrl(mActivityInstance);
                }
            });

        }
        //--------------------------------------------------------------------------------------------

        //发布日期：也是构建版本
        //TextView tvReleaseTime = (TextView) this.findViewById(R.id.tv_releasetime);
        //打包日期：2020/12/7 星期一 15:35:23 的简写
        //tvReleaseTime.setText("2020127153523");
        //本地也存储一份做弹窗提示：
        //SPUtils.getInstance().put(ConstantApi.P_BUILDIN_VERSION, tvReleaseTime.getText().toString().trim());

//        TextView textViewBackDoorOpen = (TextView) findViewById(R.id.layoutbackdooropen);
//        textViewBackDoorOpen.setOnLongClickListener(new View.OnLongClickListener() {
//            @Override
//            public boolean onLongClick(View v) {
//
//                //原始代码
//                //method_open();
//
//                //做车辆访客的测试
//                //ActivityUtils.startActivity(mActivityInstance, CarVisitorMainActivity.class);
//
//                return true;
//            }
//        });

        /*TextView textViewBackDoorClose = (TextView) findViewById(R.id.layoutbackdoorclose);
        textViewBackDoorClose.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {

                //原始代码
                method_close();

                //做视频对讲测试


                return true;
            }
        });*/


        //测试智能门禁内容
        ImageView iv_logo = (ImageView) findViewById(R.id.iv_logo);

        iv_logo.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {

                //跳转到业务台账：
//                Bundle extra_bundle = new Bundle();
//                ActivityUtils.startActivity(extra_bundle, SignatureActivity.class);

                //物业缴费模块，水费 电费  物业费 租赁费
//                Bundle extra_bundle = new Bundle();
//                ActivityUtils.startActivity(extra_bundle, LiveTabMainActivity.class);

//                Bundle extra_bundle = new Bundle();
//                ActivityUtils.startActivity(extra_bundle, ParkManageActivity.class);

            }
        });


        iv_logo.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View view) {

                //跳转到车辆访客的黑名单列表页
                //ActivityUtils.startActivity(mActivityInstance, SmartGoOutActivity.class);
//                ActivityUtils.startActivity(mActivityInstance, PaintBookingMainActivity.class);

                return true;
            }
        });


        //测试内容，一般测试第三方的SDK是否配置正确。这个是做测试，测试扫描二维码的
        /*textViewVersion.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //ActivityUtils.startActivity(TestActivity.class);
                //跳转到二维码扫描界面
                //method_QRcode();

                try {
                    //使用这个做 桌面图标的右上角数量的测试
                    BadgeUtils.setCount(100, mActivityInstance);

                    //同时设置 顶部的状态栏通知。
                    BadgeUtils.setNotificationBadge(3, mActivityInstance);

                } catch (Exception e) {

                    if (e != null) {

                        LogUtils.d("itchen----->设置角标失败--->" + e.getLocalizedMessage());
                        //做个弹窗提示：
                        CommUtils.displayToastShort(mActivityInstance, "通知角标设置失败~");

                    }

                    e.printStackTrace();
                }

            }
        });*/

        //客服电话：text_person_phonedes 客服电话：400-8686-866
        TextView textPersonPhoneDes = (TextView) this.findViewById(R.id.text_person_phonedes);
        textPersonPhoneDes.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

//                CommUtils.callThePhoneNumAction_dial("4008686866");

                String mPhoneNumber = "4008686866";

                CommUtils.checkDialog(mAlertView);

                //二次确认弹窗提示
                mAlertView = new AlertView(null,//
                        mPhoneNumber, //
                        ConstantSign.ALERTVIEW_LEFT_CANCEL,//
                        new String[]{ConstantSign.ALERTVIEW_RIGHT_COPY_INFORMATION}, //拨打电话的右侧改为二次确认为复制手机号码让用户自己拨打
                        null, //
                        AboutMeActivity.this, //
                        AlertView.Style.Alert,//
                        new OnItemClickListener() {
                            @Override
                            public void onItemClick(Object o, int position) {

                                if (position != AlertView.CANCELPOSITION) {

                                    //拨打电话的右侧改为二次确认为复制手机号码让用户自己拨打
                                    AboutMeActivity.this.startActivity(CommUtils.callThePhoneNumAction_dial(mPhoneNumber));

//
                                }

                            }
                        }
                );

                mAlertView.setCancelable(true).show();

            }
        });

    }


    //使用父类的写法
    @Override
    public Resources getResources() {
        return super.getResources();
    }

    @Override
    protected void onResume() {
        super.onResume();
        //mSession = Session.get(this);
    }

    @Override
    protected int getContentViewId() {
        return R.layout.activity_about_me;
    }


    @Override
    protected void initToolBar(ToolbarHelper toolbarHelper) {

        toolbarHelper.setTitle("关于我们");
        toolbarHelper.setLayoutClose(false, "", null);
        toolbarHelper.setLayoutLeft(true, R.drawable.backicon, new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                methodBack();
            }
        });

        //右侧添加下载二维码
//        toolbarHelper.setLayoutRight(true, 0, "更多", new View.OnClickListener() {
//            @Override
//            public void onClick(View v) {
//
//                //二维码图片，下载链接，和apk链接信息
//
//
//            }
//        });

        toolbarHelper.setLayoutRight(false, 0, "", null);

    }

    @Override
    protected void initImmersionBar() {
        super.initImmersionBar();

        ImmersionBar.with(this)//
                .titleBar(R.id.toolbarygxskout)
                .fitsSystemWindows(true)//解决状态栏和布局重叠问题，任选其一，默认为false，当为true时一定要指定statusBarColor()，不然状态栏为透明色，还有一些重载方法
                //.statusBarColor(R.color.colorPrimary)//
                //.navigationBarColor(R.color.colorPrimary)//
                //.keyboardEnable(true)
                .init();
    }

    @Override
    protected void onClickNodata(View v) {

        //这里暂时不需要联网等操作内容。均是取出本地信息

    }


//    private void methodtest002() {
//
//        /*String appId = "wxaa1f7ccf43891786"; // 填应用AppId
//        IWXAPI api = WXAPIFactory.createWXAPI(mActivityInstance, appId);
//
//        WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
//        req.userName = "gh_35adac1c1156"; // 填小程序原始id
//        req.path = path;                  ////拉起小程序页面的可带参路径，不填默认拉起小程序首页，对于小游戏，可以只传入 query 部分，来实现传参效果，如：传入 "?foo=bar"。
//        req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;// 可选打开 开发版，体验版和正式版
//        api.sendReq(req);*/
//
//    }


    /*private void method_open(){

        Constants.getInstance().setRelease(false);//标志打开后门的首端地址信息。
        SPUtils.getInstance().put(ConstantApi.ENVIRONMENT, "test");//如果打开了后门则该值是false
        //展示后门的baseUrl...
        CommUtils.displayToastShort(AboutMeActivity.this,Constants.getInstance().getSystemConfig());

        switchBackDoor();

        if (vibrator!=null){
            vibrator.vibrate(2000);
        }

    }*/

    /*private void method_close(){

        Constants.getInstance().setRelease(true);
        //如果关闭了后门则该值是true,标识切换到了正式环境
        SPUtils.getInstance().put(ConstantApi.ENVIRONMENT, "official");

        CommUtils.displayToastShort(AboutMeActivity.this, Constants.getInstance().getSystemConfig());
        switchBackDoor();
        if (vibrator!=null){
            if (vibrator != null) {
                vibrator.vibrate(2000);
            }
        }

    }*/

    /*private Handler mHandler = new Handler();

    private Runnable mRunnable =new Runnable() {
        @Override
        public void run() {

            if (mSession!=null){
                //按照用户失效处理。
                Bundle bundle = new Bundle();
                bundle.putInt(ConstantApi.EXTRA_REQUEST_20401, ConstantApi.REQUEST_20401);
                ActivityUtils.startActivity(bundle, LoginActivity.class);
            }

        }
    };*/

    /*private void switchBackDoor(){

        CommUtils.ClearAllOutData(AboutMeActivity.this,AboutMeActivity.this);
        //重新获取了token了

        //2017年修改因为切换后门导致首页三大页面无数据，应该是进入到类似第一次进入app的模式
        //EventBus.getDefault().post(new LocationEvent(ConstantApi.EVENT_NODATA_TO_LOCAITON));

        //跳转到登录界面。
        mHandler.postDelayed(mRunnable, 500);

    }*/

    @Override
    public void gainDatas() {

        //这个不获取数据，不处理

    }

    @Override
    public void methodBack() {

        //结束该界面
        ActivityUtils.finishActivity(this);

    }
}
